<!DOCTYPE html>
<html lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>dev_set_check [HALCON算子参考手册]</title>
<style type="text/css">
      body {
    color: #000000;
    background-color: #ffffff;
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
}

.body_main {
    margin-left: 35px;
    margin-right: 35px;
}

@media screen and (min-width:992px) {

    .body_main {
        margin-left: 10%;
        margin-right: 10%;
    }

    table.toctable {
        width: 80%
    }
}

@media screen and (min-width:1400px) {

    .body_main {
        margin-left: 15%;
        margin-right: 15%;
    }

    table.toctable {
        width: 70%
    }
}

body>div ul ul {
    margin-left: inherit;
}

a:link {
    color: #0044cc;
}

a:link,
a:visited {
    text-decoration: none;
}

a:link:hover,
a:visited:hover {
    text-decoration: underline;
}

th {
    text-align: left;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    text-rendering: optimizeLegibility;
    color: #666666;
}

code {
    font-family: monospace,monospace;
}

h1 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

h2 a.halconoperator {
    font-family: Arial, Helvetica, sans-serif;
    color: #666666;
}

hr {
    border: 0;
    border-top: solid 1px #f28d26;
}

.pre {
    display: block;
    padding-bottom: 1ex;
    font-family: monospace;
    white-space: pre;
}

pre {
    font-family: monospace, monospace;
    padding: 1ex;
    white-space: pre-wrap;
}

.toc {
    font-size: 80%;
    border-top: 1px dashed #f28d26;
    border-bottom: 1px dashed #f28d26;
    padding-top: 5px;
    padding-bottom: 5px;
}

.inv {
    margin: 0;
    border: 0;
    padding: 0;
}

.banner {
    color: #666666;
    padding-left: 1em;
}

.logo {
    background-color: white;
}

.keyboard {
    font-size: 80%;
    padding-left: 3px;
    padding-right: 3px;
    border-radius: 5px;
    border-width: 1px;
    border-style: solid;
    border-color: #f28d26;
    background-color: #f3f3f3;
}

.warning {
    margin-top: 2ex;
    margin-bottom: 1ex;
    padding: 10px;
    text-align: center;
    border: 1px solid;
    color: #bb0000;
    background-color: #fff7f7
}

.imprint {
    margin-top: 1ex;
    font-size: 80%;
    color: #666666;
}

.imprinthead {
    font-weight: bolder;
    color: #666666;
}

.indexlink {
    text-align: right;
    padding-bottom: 5px;
}

.postscript {
    margin-top: 2ex;
    font-size: 80%;
    color: #666666
}

.evenrow {
    background-color: #e7e7ef;
    vertical-align: top;
}

.oddrow {
    background-color: #f7f7ff;
    vertical-align: top;
}

.headrow {
    background-color: #97979f;
    color: #ffffff;
    vertical-align: top;
}

.logorow {
    vertical-align: top;
}

.error {
    color: red;
}

.var {
    font-style: italic
}

.halconoperator {
    font-family: monospace, monospace;
}

span.operator {
    font-family: monospace, monospace;
}

span.procedure {
    font-family: monospace, monospace;
}

span.operation {
    font-family: monospace, monospace;
}

span.feature {
    font-family: Arial, Helvetica, Homerton, sans-serif;
}

ul {
    padding-left: 1.2em;
}

li.dot {
    list-style-type: square;
    color: #f28d26;
}

.breadcrumb {
    font-size: 80%;
    color: white;
    background-color: #062d64;
    margin-bottom: 20px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 15px;
}

.webbar {
    font-size: 80%;
    background-color: #dddddd;
    margin-top: 0px;
    margin-left: -35px;
    margin-right: -35px;
    margin-bottom: 0px;
    padding-top: 5px;
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 5px;
}

.footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-top: 1px dashed #f28d26;
    font-size: 80%;
    color: #666666;
    padding-bottom: 8px;
}

.footer .socialmedia a {
    padding-left: 7px;
}

.socialmedia {
    padding-top: 10px;
}

.copyright {
    margin-top: 19px;
}

.breadcrumb a {
    color: #ffffff;
    border-bottom: 1px solid white;
}

.breadcrumb a:link:hover,
.breadcrumb a:visited:hover {
    text-decoration: none;
    border-bottom: none;
}

.heading {
    margin-top: 1ex;
    font-size: 110%;
    font-weight: bold;
    color: #666666;
}

.text {
    color: black;
}

.example {
    font-size: 80%;
    background-color: #f3f3f3;
    border: 1px dashed #666666;
    padding: 10px;
}

.displaymath {
    display: block;
    text-align: center;
    margin-top: 1ex;
    margin-bottom: 1ex;
}

.title {
    float: left;
    padding-top: 3px;
    padding-bottom: 3px;
}

.signnote {
    font-family: Arial, Helvetica, Homerton, sans-serif;
    font-size: 80%;
    color: #666666;
    font-weight: lighter;
    font-style: italic
}

.par {
    margin-bottom: 1.5em;
}

.parhead {
    text-align: right;
}

.parname {
    float: left;
}

.pardesc {
    font-size: 85%;
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    margin-left: 2em;
}

.parcat {
    color: #666;
    font-weight: bold;
}

*[data-if=cpp],
*[data-if=c],
*[data-if=dotnet],
*[data-if=com],
*[data-if=python] {
    display: none;
}

.tabbar {
    text-align: right;
    border-bottom: 1px solid #f28d26;
    margin-bottom: 0.5em;
}

ul.tabs {
    padding-top: 3px;
    padding-bottom: 3px;
    margin-top: 10px;
    margin-bottom: 0;
    font-size: 80%
}

ul.tabs li {
    padding-top: 3px;
    padding-bottom: 3px;
    display: inline;
    overflow: hidden;
    list-style-type: none;
    margin: 0;
    margin-left: 8px;
    border-top: 1px solid #666;
    border-left: 1px solid #666;
    border-right: 1px solid #666;
}

ul.tabs li.active {
    border-left: 1px solid #f28d26;
    border-right: 1px solid #f28d26;
    border-top: 1px solid #f28d26;
    border-bottom: 1px solid #fff;
}

ul.tabs li.inactive {
    background-color: #eee;
}

ul.tabs li a {
    padding-left: 5px;
    padding-right: 5px;
    color: #666;
}

ul.tabs li a:link:hover {
    text-decoration: none;
}

ul.tabs li.inactive a {
    color: #666;
}

ul.tabs li.active a {
    color: black;
}

dl.generic dd {
    margin-bottom: 1em;
}

.pari {
    color: olive;
}

.paro {
    color: maroon;
}

.comment {
    font-size: 80%;
    color: green;
    white-space: nowrap;
}

table.grid {
    border-collapse: collapse;
}

table.grid td {
    padding: 5px;
    border: 1px solid;
}

table.layout {
    border: 0px;
}

table.layout td {
    padding: 5px;
}

table.table {
    border-collapse: collapse;
}

table.table td {
    padding: 5px;
    border-left: 0px;
    border-right: 0px;
}

table.table tr:last-child {
    border-bottom: 1px solid;
}

table.table th {
    padding: 5px;
    border-top: 1px solid;
    border-bottom: 1px solid;
    border-left: 0px;
    border-right: 0px;
}

.details_summary {
    cursor: pointer;
}

table.toctable {
    width: 100%;
}

table.toctable col:first-child {
    width: 20%;
}

table.toctable col:nth-last-child(2) {
    width: 8%;
}

table.altcolored tr:nth-child(even) {
    background-color: #f3f3f3;
}

    </style>
<!--OP_REF_STYLE_END-->
<script>
    <!--
var active_lang='hdevelop';function switchVisibility(obj,active_lang,new_lang)
{var display_style='inline';
for(var i=0;i<obj.length;i++)
{if(obj.item(i).getAttribute('data-if')==new_lang)
{obj.item(i).style.display=display_style;}
if(obj.item(i).getAttribute('data-if')==active_lang)
{obj.item(i).style.display='none';}}
return;}
function toggleLanguage(new_lang,initial)
{if(active_lang!=new_lang)
{var lis=document.getElementsByTagName('li');for(var i=0;i<lis.length;i++)
{if(lis.item(i).id=='syn-'+new_lang)
{lis.item(i).className='active';}
else
{lis.item(i).className='inactive';}}
var divs=document.getElementsByTagName('div');var spans=document.getElementsByTagName('span');switchVisibility(divs,active_lang,new_lang);switchVisibility(spans,active_lang,new_lang);if(!initial)
{setCookie("halcon_reference_language",new_lang,null,null);}
active_lang=new_lang;}
return;}
function setCookie(name,value,domain,exp_offset,path,secure)
{localStorage.setItem(name,value);}
function getCookie(name)
{return localStorage.getItem(name);}
function initialize()
{var qs=location.href.split('?')[1];var qs_lang_raw=location.href.split('interface=')[1];var qs_lang;if(qs_lang_raw)
{qs_lang=qs_lang_raw.split('#')[0];}
var cookie_lang=getCookie("halcon_reference_language");var new_lang;if((qs_lang=="hdevelop")||(qs_lang=="dotnet")||(qs_lang=="python")||(qs_lang=="cpp")||(qs_lang=="c"))
{new_lang=qs_lang;setCookie("halcon_reference_language",new_lang,null,null);}
else if((cookie_lang=="hdevelop")||(cookie_lang=="dotnet")||(cookie_lang=="python")||(cookie_lang=="cpp")||(cookie_lang=="c"))
{new_lang=cookie_lang;}
else
{new_lang="hdevelop";}
toggleLanguage(new_lang,1);return;}
-->

  </script>
</head>
<body onload="initialize();">
<div class="breadcrumb">
<br class="inv"><a href="index.html">目录</a> / <a href="toc_develop.html">Develop</a><br class="inv">
</div>
<div class="body_main">
<div class="tabbar"><ul class="tabs">
<li id="syn-hdevelop" class="active"><a href="javascript:void(0);" onclick="toggleLanguage('hdevelop')" onfocus="blur()">HDevelop</a></li>
<li id="syn-dotnet" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('dotnet')" onfocus="blur()">.NET</a></li>
<li id="syn-python" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('python')" onfocus="blur()">Python</a></li>
<li id="syn-cpp" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('cpp')" onfocus="blur()">C++</a></li>
<li id="syn-c" class="inactive"><a href="javascript:void(0);" onclick="toggleLanguage('c')" onfocus="blur()">C</a></li>
</ul></div>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<div data-if="dotnet" style="display:none"><p>Use the tabs on the upper right to switch to a different programming language.</p></div>
<div data-if="cpp" style="display:none"><p>Use the tabs on the upper right to switch to a different programming language.</p></div>
<div data-if="c" style="display:none"><p>Use the tabs on the upper right to switch to a different programming language.</p></div>
<div data-if="python" style="display:none"><p>Use the tabs on the upper right to switch to a different programming language.</p></div>
<div data-if="hdevelop" style="display:inline">
<!--OP_REF_HEADER_END-->
<h1 id="sec_name">
<span data-if="hdevelop" style="display:inline;">dev_set_check</span><span data-if="c" style="display:none;">dev_set_check</span><span data-if="cpp" style="display:none;">DevSetCheck</span><span data-if="dotnet" style="display:none;">DevSetCheck</span><span data-if="python" style="display:none;">dev_set_check</span> (算子名称)</h1>
<h2>名称</h2>
<p><code><span data-if="hdevelop" style="display:inline;">dev_set_check</span><span data-if="c" style="display:none;">dev_set_check</span><span data-if="cpp" style="display:none;">DevSetCheck</span><span data-if="dotnet" style="display:none;">DevSetCheck</span><span data-if="python" style="display:none;">dev_set_check</span></code> — Specify the error handling in HDevelop.</p>
<h2 id="sec_synopsis">参数签名</h2>
<div data-if="hdevelop" style="display:inline;">
<p>
<code><b>dev_set_check</b>( :  : <a href="#Mode"><i>Mode</i></a> : )</code></p>
</div>
<div data-if="c" style="display:none;">
<p>
<code>Herror <b>dev_set_check</b>(const char* <a href="#Mode"><i>Mode</i></a>)</code></p>
<p>
<code>Herror <b>T_dev_set_check</b>(const Htuple <a href="#Mode"><i>Mode</i></a>)</code></p>
</div>
<div data-if="cpp" style="display:none;">
<p>
<code>void <b>DevSetCheck</b>(const HTuple&amp; <a href="#Mode"><i>Mode</i></a>)</code></p>
</div>
<div data-if="com" style="display:none;"></div>
<div data-if="dotnet" style="display:none;">
<p>
<code>static void <a href="HOperatorSet.html">HOperatorSet</a>.<b>DevSetCheck</b>(<a href="HTuple.html">HTuple</a> <a href="#Mode"><i>mode</i></a>)</code></p>
</div>
<div data-if="python" style="display:none;">
<p>
<code>def <b>dev_set_check</b>(<a href="#Mode"><i>mode</i></a>: str) -&gt; None</code></p>
</div>
<h2 id="sec_description">描述</h2>
<p><code><span data-if="hdevelop" style="display:inline">dev_set_check</span><span data-if="c" style="display:none">dev_set_check</span><span data-if="cpp" style="display:none">DevSetCheck</span><span data-if="com" style="display:none">DevSetCheck</span><span data-if="dotnet" style="display:none">DevSetCheck</span><span data-if="python" style="display:none">dev_set_check</span></code> specifies how HDevelop has to react in case of
an error, i.e., if the return state of an operator is not <TT>2</TT> (
      <TT>H_MSG_TRUE</TT>)
    .
</p>
<p>If <a href="#Mode"><i><code><span data-if="hdevelop" style="display:inline">Mode</span><span data-if="c" style="display:none">Mode</span><span data-if="cpp" style="display:none">Mode</span><span data-if="com" style="display:none">Mode</span><span data-if="dotnet" style="display:none">mode</span><span data-if="python" style="display:none">mode</span></code></i></a> has the value <i><span data-if="hdevelop" style="display:inline">'give_error'</span><span data-if="c" style="display:none">"give_error"</span><span data-if="cpp" style="display:none">"give_error"</span><span data-if="com" style="display:none">"give_error"</span><span data-if="dotnet" style="display:none">"give_error"</span><span data-if="python" style="display:none">"give_error"</span></i>---which is the
system default---an erroneous operator call will throw an exception,
that can be caught within the HDevelop program by the <a href="catch.html"><code><span data-if="hdevelop" style="display:inline">catch</span><span data-if="c" style="display:none">catch</span><span data-if="cpp" style="display:none">Catch</span><span data-if="com" style="display:none">Catch</span><span data-if="dotnet" style="display:none">Catch</span><span data-if="python" style="display:none">catch</span></code></a>
statement.
However, if there is no surrounding <a href="try.html"><code><span data-if="hdevelop" style="display:inline">try</span><span data-if="c" style="display:none">try</span><span data-if="cpp" style="display:none">Try</span><span data-if="com" style="display:none">Try</span><span data-if="dotnet" style="display:none">Try</span><span data-if="python" style="display:none">try</span></code></a>-<a href="catch.html"><code><span data-if="hdevelop" style="display:inline">catch</span><span data-if="c" style="display:none">catch</span><span data-if="cpp" style="display:none">Catch</span><span data-if="com" style="display:none">Catch</span><span data-if="dotnet" style="display:none">Catch</span><span data-if="python" style="display:none">catch</span></code></a> block in the
HDevelop program and the program is executed within HDevelop, the
program execution stops at the erroneous operator and an error message box
is opened to display the error text.
In addition, the appropriate operator call is entered into the
<i>Operator Window</i>, so that the user can easily edit and possibly
correct the parameters of the erroneous operator call.
If the procedure was called from HDevEngine and the exception is
not caught within the HDevelop program, an <code>HDevEngineException</code>
object is thrown and the procedure is left.
</p>
<p>If <a href="#Mode"><i><code><span data-if="hdevelop" style="display:inline">Mode</span><span data-if="c" style="display:none">Mode</span><span data-if="cpp" style="display:none">Mode</span><span data-if="com" style="display:none">Mode</span><span data-if="dotnet" style="display:none">mode</span><span data-if="python" style="display:none">mode</span></code></i></a> is set to <i><span data-if="hdevelop" style="display:inline">'~give_error'</span><span data-if="c" style="display:none">"~give_error"</span><span data-if="cpp" style="display:none">"~give_error"</span><span data-if="com" style="display:none">"~give_error"</span><span data-if="dotnet" style="display:none">"~give_error"</span><span data-if="python" style="display:none">"~give_error"</span></i>, the error
will be ignored and the program continues with the next operator.
<code><span data-if="hdevelop" style="display:inline">dev_set_check('~give_error')</span><span data-if="c" style="display:none">dev_set_check("~give_error")</span><span data-if="cpp" style="display:none">DevSetCheck("~give_error")</span><span data-if="com" style="display:none">DevSetCheck("~give_error")</span><span data-if="dotnet" style="display:none">DevSetCheck("~give_error")</span><span data-if="python" style="display:none">dev_set_check("~give_error")</span></code> is intended to be used in connection with
<a href="dev_error_var.html"><code><span data-if="hdevelop" style="display:inline">dev_error_var</span><span data-if="c" style="display:none">dev_error_var</span><span data-if="cpp" style="display:none">DevErrorVar</span><span data-if="com" style="display:none">DevErrorVar</span><span data-if="dotnet" style="display:none">DevErrorVar</span><span data-if="python" style="display:none">dev_error_var</span></code></a>, which allows to check the result state that is
returned by 该算子 calls.
</p>
<h2 id="sec_attention">注意</h2>
<p>Using the code export feature of HDevelop, the code that is generated
for this operator may have a different behavior than the related
HALCON operator.
For a detailed description of the code export of HDevelop graphics
operators into the different programming languages see in the
<code>“HDevelop User's Guide”</code> the chapter <code>Code Export</code>
-&gt; <code>General Aspects of Code Generation</code>
-&gt; <code>Graphics Windows</code>.
</p>
<h2 id="sec_parameters">参数表</h2>
  <div class="par">
<div class="parhead">
<span id="Mode" class="parname"><b><code><span data-if="hdevelop" style="display:inline">Mode</span><span data-if="c" style="display:none">Mode</span><span data-if="cpp" style="display:none">Mode</span><span data-if="com" style="display:none">Mode</span><span data-if="dotnet" style="display:none">mode</span><span data-if="python" style="display:none">mode</span></code></b> (input_control)  </span><span>string <code>→</code> <span data-if="dotnet" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="python" style="display:none">str</span><span data-if="cpp" style="display:none"><a href="HTuple.html">HTuple</a></span><span data-if="c" style="display:none">Htuple</span><span data-if="hdevelop" style="display:inline"> (string)</span><span data-if="dotnet" style="display:none"> (<i>string</i>)</span><span data-if="cpp" style="display:none"> (<i>HString</i>)</span><span data-if="c" style="display:none"> (<i>char*</i>)</span></span>
</div>
<p class="pardesc">Mode of error handling.</p>
<p class="pardesc"><span class="parcat">Default:
      </span>
    <span data-if="hdevelop" style="display:inline">'give_error'</span>
    <span data-if="c" style="display:none">"give_error"</span>
    <span data-if="cpp" style="display:none">"give_error"</span>
    <span data-if="com" style="display:none">"give_error"</span>
    <span data-if="dotnet" style="display:none">"give_error"</span>
    <span data-if="python" style="display:none">"give_error"</span>
</p>
</div>
<h2 id="sec_example_hdevelop">例程 (HDevelop)</h2>
<pre class="example">
dev_close_window ()
dev_open_window (0, 0, 512, 512, 'black', WindowHandle)
dev_error_var (Error, 1)
dev_set_check ('~give_error')
FileName := 'wrong_name'
read_image (Image, FileName)
ReadError := Error
if (ReadError != H_MSG_TRUE)
  write_string (WindowHandle, 'wrong file name: '+FileName)
endif
* Now the program will stop with an exception
dev_set_check ('give_error')
read_image (Image, FileName)
</pre>
<h2 id="sec_result">结果</h2>
<p>If the values of the specified parameters are correct,
<code><span data-if="hdevelop" style="display:inline">dev_set_check</span><span data-if="c" style="display:none">dev_set_check</span><span data-if="cpp" style="display:none">DevSetCheck</span><span data-if="com" style="display:none">DevSetCheck</span><span data-if="dotnet" style="display:none">DevSetCheck</span><span data-if="python" style="display:none">dev_set_check</span></code> returns <TT>2</TT> (
      <TT>H_MSG_TRUE</TT>)
    .  Otherwise, an
exception is raised and an error code returned.</p>
<h2 id="sec_successors">可能的后置算子</h2>
<p>
<code><a href="dev_error_var.html"><span data-if="hdevelop" style="display:inline">dev_error_var</span><span data-if="c" style="display:none">dev_error_var</span><span data-if="cpp" style="display:none">DevErrorVar</span><span data-if="com" style="display:none">DevErrorVar</span><span data-if="dotnet" style="display:none">DevErrorVar</span><span data-if="python" style="display:none">dev_error_var</span></a></code>
</p>
<h2 id="sec_see">参考其它</h2>
<p>
<code><a href="set_check.html"><span data-if="hdevelop" style="display:inline">set_check</span><span data-if="c" style="display:none">set_check</span><span data-if="cpp" style="display:none">SetCheck</span><span data-if="com" style="display:none">SetCheck</span><span data-if="dotnet" style="display:none">SetCheck</span><span data-if="python" style="display:none">set_check</span></a></code>, 
<code><a href="try.html"><span data-if="hdevelop" style="display:inline">try</span><span data-if="c" style="display:none">try</span><span data-if="cpp" style="display:none">Try</span><span data-if="com" style="display:none">Try</span><span data-if="dotnet" style="display:none">Try</span><span data-if="python" style="display:none">try</span></a></code>, 
<code><a href="catch.html"><span data-if="hdevelop" style="display:inline">catch</span><span data-if="c" style="display:none">catch</span><span data-if="cpp" style="display:none">Catch</span><span data-if="com" style="display:none">Catch</span><span data-if="dotnet" style="display:none">Catch</span><span data-if="python" style="display:none">catch</span></a></code>, 
<code><a href="endtry.html"><span data-if="hdevelop" style="display:inline">endtry</span><span data-if="c" style="display:none">endtry</span><span data-if="cpp" style="display:none">Endtry</span><span data-if="com" style="display:none">Endtry</span><span data-if="dotnet" style="display:none">Endtry</span><span data-if="python" style="display:none">endtry</span></a></code>
</p>
<h2 id="sec_module">模块</h2>
<p>
Foundation</p>
</div>
<!--OP_REF_FOOTER_START-->
<hr>
<div class="indexlink">
<a href="index_classes.html"><span data-if="dotnet" style="display:none;">类别</span><span data-if="cpp" style="display:none;">类别</span></a><span data-if="dotnet" style="display:none;"> | </span><span data-if="cpp" style="display:none;"> | </span><a href="index_by_name.html">算子列表</a>
</div>
<div class="footer">
<div class="copyright">HALCON算子参考手册 Copyright © 2015-2023 51Halcon</div>
</div>
</div>
</body>
</html>
